Various makes and models of storage systems are manufactured and sold for a variety of customers, ranging from individual households and small businesses, to large businesses and government agencies. Typically a “high end” storage system for an enterprise such as a large business or government agency has a file server architecture that can be configured to supply a given number of clients with various classes and capacities of file data storage.
A specific configuration of a storage system model may also have selected software components. A given storage system model may have a particular version of firmware and a particular version of an operating system layered on the firmware. Typically a variety of software utility applications are provided for service and maintenance so that system administration can be done locally by the owner of the enterprise or remotely by the storage system vender. The utility applications include system level backup and recovery tools, system support and diagnostic tools, system reporting tools, and system statistics tools. The utility applications also include tools for operating upon client files such as anti-virus tools, backup and archiving tools, query tools and filters, formatting and indexing tools, compression tools, and encryption tools.
When executed on a particular storage system, many of the utility applications require knowledge of the specific configuration of the particular storage system. Therefore, such a utility application must be coded, linked, or loaded with configuration data about the particular storage system, or such a utility application must access the configuration data when the utility application is executed. In addition, such a utility application may be built upon more basic software layers in the storage system. Therefore, a utility application for the storage system may require configuration data from a variety of sources, such as hardware configuration data, firmware and operating system configuration data, application level configuration data, and runtime data from event logs and from the collection of statistics.
For example, the EMC Corporation VNX brand of storage system has four different utility applications that collect configuration information for various serviceability use cases. The utility applications include a configuration backup tool to backup data mover configuration, a diagnostic collection tool to collect system configuration information for Escalation Engineering (EE) troubleshooting purposes, a configuration log tool to collect system configuration information for engineering system reporting purposes, and a tool to collect system connectivity environment information regarding the connections between data movers and backend storage arrays. Each of these tools collects certain configuration information and stores the collected configuration information in a respective different database for each tool. The sources of the configuration information are located in certain logical unit numbers (LUNs) of the backend storage, which are dedicated to storage of file server control information. These sources of configuration information include a system database for the file systems accessible to network clients through the data movers, a NAS configuration data base and logs about the hardware configuration of the file server and its backend SAN environment, and data mover dumps into a staging area in one of the LUNs.